home *** CD-ROM | disk | FTP | other *** search
/ Turnbull China Bikeride / Turnbull China Bikeride - Disc 2.iso / STUTTGART / LANG / C / LIB / DESK / CORE / Desk / h / Menu < prev    next >
Text File  |  1996-05-21  |  3KB  |  68 lines

  1.  
  2. #ifndef __Desk_Menu_h
  3. #define __Desk_Menu_h
  4. #ifdef __cplusplus
  5. extern "C" {
  6. #endif
  7. #ifndef __Desk_Core_h
  8. #include "Desk.Core.h"
  9. #endif
  10. #ifndef __Desk_Wimp_h
  11. #include "Desk.Wimp.h"
  12. #endif
  13. #ifndef __Desk_Event_h
  14. #include "Desk.Event.h"
  15. #endif
  16. extern Desk_menu_ptr Desk_Menu_New(const char *title, const char *description);
  17. extern Desk_menu_ptr Desk_Menu_Extend(Desk_menu_ptr menu, const char *description);
  18. extern void Desk_Menu_Show(Desk_menu_ptr menu, int x, int y);
  19. extern void Desk_Menu_ShowLast(void);
  20. extern void Desk_Menu_PopUp(Desk_menu_ptr menu, Desk_window_handle window, Desk_icon_handle icon);
  21. extern void Desk_Menu_PopUpAuto(Desk_menu_ptr menu);
  22. extern void Desk_Menu_AddSubMenu(Desk_menu_ptr menu, int entry, Desk_menu_ptr submenu);
  23. #define Desk_Menu_AddSubWindow(menu, entry, window) \
  24. Desk_Menu_AddSubMenu(menu, entry, (Desk_menu_ptr) window)
  25. extern void Desk_Menu_MakeIndirected(Desk_menu_ptr menu, int entry,
  26. const char *buffer, int size);
  27. extern void Desk_Menu_MakeWritable(Desk_menu_ptr menu, int entry,
  28. const char *buffer, int size, const char *valid);
  29. extern void Desk_Menu_SetFlags(Desk_menu_ptr menu, int entry, int ticked, int shaded);
  30. extern void Desk_Menu_GetFlags(Desk_menu_ptr menu, int entry, int *ticked, int *shaded);
  31. extern void Desk_Menu_SetText(Desk_menu_ptr menu, int entry, const char *text);
  32. extern char *Desk_Menu_GetText(Desk_menu_ptr menu, int entry);
  33. extern int Desk_Menu_CalcHeight(Desk_menu_ptr menu);
  34. #define Desk_Menu_SysHandle(menu) (menu)
  35. #define Desk_Menu_SDispose(menu) free(menu)
  36. extern void Desk_Menu_FullDispose(Desk_menu_ptr menu);
  37. extern void Desk_Menu_RemoveItem(Desk_menu_ptr menu, int entry);
  38. extern void Desk_Menu_Warn(Desk_menu_ptr menu, int entry, Desk_bool yesno,
  39. Desk_event_handler handler, void *reference);
  40. extern void Desk_Menu_ReviseWidth(Desk_menu_ptr menu);
  41. #define Desk_Menu_FirstItem(menu) ((Desk_menu_item *) (((Desk_menu_ptr) (menu) + 1)))
  42. #define Desk_Menu_SetNotify(menu, entry, notify) \
  43. Desk_Menu_FirstItem(menu)[entry].menuflags.data.notifysub = (notify)
  44. #define Desk_Menu_FontMenu_NOTICK 0 
  45. #define Desk_Menu_FontMenu_TICKSYSFONT ((char *)1) 
  46. extern Desk_menu_ptr Desk_Menu_FontMenu(Desk_bool sysfont, const char *tick);
  47. extern Desk_menu_ptr Desk_Menu_FontMenu3(Desk_bool sysfont, const char *tick);
  48. extern char *Desk_Menu_FontMenuDecode(const int *selection);
  49. extern char *Desk_Menu_FontMenuDecode3(const int *selection);
  50. #ifdef Desk__using_SDLS
  51. extern Desk_menu_ptr *Desk_Menu__Ref_fontmenu(void);
  52. extern Desk_wimp_point *Desk_Menu__Ref_currentpos(void);
  53. extern Desk_menu_ptr *Desk_Menu__Ref_currentopen(void);
  54. #endif
  55. #if defined(Desk__using_SDLS) && !defined(Desk__making_Menu)
  56. #define Desk_menu_fontmenu (*Desk_Menu__Ref_fontmenu())
  57. #define Desk_menu_currentpos (*Desk_Menu__Ref_currentpos())
  58. #define Desk_menu_currentopen (*Desk_Menu__Ref_currentopen())
  59. #else
  60. extern Desk_menu_ptr Desk_menu_fontmenu;
  61. extern Desk_wimp_point Desk_menu_currentpos; 
  62. extern Desk_menu_ptr Desk_menu_currentopen; 
  63. #endif
  64. #ifdef __cplusplus
  65. }
  66. #endif
  67. #endif
  68.